package com.hyl.creature;

import com.hyl.weapon.Weapon;

import java.util.ArrayList;

/**
 * @description:
 * @author: molar
 * @date: Created in 2020/6/14 11:42
 * @version:
 * @modified By:
 */
public abstract class Creature {
    private String id;
    private String description;
    private int HPValue;

    private Weapon currentWeapon;

    private ArrayList<Weapon> weapons = new ArrayList<>();

    public abstract void UseSingleFunctionWeapon(Weapon weapon, Creature targetCreature);
    public abstract void UseDoubleFunctionWeapon(Weapon weapon, Creature userCreature, Creature targetCreature);

    public Creature() {
    }

    public Creature(String id, String description) {
        this.id = id;
        this.description = description;
    }

    public Creature(String id, String description, int HPValue) {
        this.id = id;
        this.description = description;
        this.HPValue = HPValue;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public int getHPValue() {
        return HPValue;
    }

    public void setHPValue(int HPValue) {
        this.HPValue = HPValue;
    }

    public Weapon getCurrentWeapon() {
        return currentWeapon;
    }

    public void setCurrentWeapon(Weapon currentWeapon) {
        this.currentWeapon = currentWeapon;
    }

    public ArrayList<Weapon> getWeapons() {
        return weapons;
    }

    public void setWeapons(ArrayList<Weapon> weapons) {
        this.weapons = weapons;
    }
}
